gtk+3.0.git
9 years agoscrolledwindow: add ::max-content-width and -height properties
Georges Basile Stavracas Neto [Thu, 2 Jun 2016 02:18:37 +0000 (23:18 -0300)]
scrolledwindow: add ::max-content-width and -height properties

The GtkScrolledWindow has support to set the minimum content size (both
width and height) which controls the minimum space allocated, but does
not exposes any way to control the maximum size the content can grow.

After the introduction of GtkPopover, which always uses the minimum
size of it's children widgets, the lack of max-content-width and -height
properties became a concrete use case.

This patch introduces the GtkScrolledWindow::max-content-width and
-height properties. The properties will alter the minimum size of
the scrolled window, making it grow up to the set value. They also
respect the previously set ::min-content-width and -height.

https://bugzilla.gnome.org/show_bug.cgi?id=742281

9 years agoGDK W32: Fix dragging AeroSnap application
Руслан Ижбулатов [Sun, 5 Jun 2016 07:37:02 +0000 (07:37 +0000)]
GDK W32: Fix dragging AeroSnap application

The original patch for commit b420c53773ca5119afb43f0f351cb8f33c2bcaf9
was applied incorrectly, doing the actual snapping in the wrong place.
Move the code.

9 years agoprogressbar: Render text with the text css node
Matthias Clasen [Fri, 3 Jun 2016 20:30:00 +0000 (16:30 -0400)]
progressbar: Render text with the text css node

This is the same fix that was just applied to GtkScale.

9 years agoscale: Also queue a resize if font changes
Matthias Clasen [Fri, 3 Jun 2016 14:49:29 +0000 (10:49 -0400)]
scale: Also queue a resize if font changes

As Benjamin pointed out, what AFFECTS_FONT can also affect size,
but the implication is not automatic, so queue a resize manually.

9 years agogdktypes: Update docs for GDK_GRAB_FAILED
Pavel Grunt [Thu, 2 Jun 2016 13:35:38 +0000 (15:35 +0200)]
gdktypes: Update docs for GDK_GRAB_FAILED

Mention in documentation that it is available since 3.16

https://bugzilla.gnome.org/show_bug.cgi?id=767165

9 years agoscale: Apply css style to text
Matthias Clasen [Fri, 3 Jun 2016 04:30:59 +0000 (00:30 -0400)]
scale: Apply css style to text

Use the new functions we have to apply CSS styles to the
value and marks text from their respective subnodes.

9 years agoAdd a function to get a font from a css style
Matthias Clasen [Fri, 3 Jun 2016 04:29:05 +0000 (00:29 -0400)]
Add a function to get a font from a css style

Similar in spirit to
gtk_style_context_get (ctx, state, "font", ...)
but avoids the need for a style context.
This will be used to for css-styled text rendering
from css subnodes.

9 years agoAdd a function to turn a css style into pango attributes
Matthias Clasen [Fri, 3 Jun 2016 04:19:24 +0000 (00:19 -0400)]
Add a function to turn a css style into pango attributes

This is _gtk_style_context_get_pango_attributes, decoupled
from the GtkStyleContext. This will be used to drive css-styled
text rendering from css subnodes of widgets, e.g. for the value
in GtkScale.

9 years agowidget: Avoid a deprecation warning
Timm Bäder [Thu, 2 Jun 2016 19:52:11 +0000 (21:52 +0200)]
widget: Avoid a deprecation warning

9 years agoShow a scroll cursor when appropriate
Matthias Clasen [Wed, 1 Jun 2016 03:33:54 +0000 (23:33 -0400)]
Show a scroll cursor when appropriate

When doing two-finger scrolling or click scrolling using a
trackpoint, show the all-scroll cursor to indicate what is
going on.

https://bugzilla.gnome.org/show_bug.cgi?id=753202

9 years agowayland: Provide information about scroll devices
Matthias Clasen [Wed, 1 Jun 2016 03:14:30 +0000 (23:14 -0400)]
wayland: Provide information about scroll devices

The Wayland protocol does not share XI2's wealth of information
about individual devices, but it does provide discriminating
information about the source for scroll events. Pass this on to
the application by creating separate slave devices for these,
and setting them as source device on the scroll events.

These devices can be discriminated by their input-source property:
wheel      - GDK_SOURCE_MOUSE
finger     - GDK_SOURCE_TOUCHPAD
continuous - GDK_SOURCE_TRACKPOINT

https://bugzilla.gnome.org/show_bug.cgi?id=767093

fix up

9 years agoa11y tests: Update expected output
Matthias Clasen [Wed, 1 Jun 2016 18:18:46 +0000 (14:18 -0400)]
a11y tests: Update expected output

These changes were caused by the introduction of GtkStackAccessible.

9 years agobutton css node test: Update for switch style changes
Matthias Clasen [Wed, 1 Jun 2016 17:12:19 +0000 (13:12 -0400)]
button css node test: Update for switch style changes

We no longer add the redundant .slider style class in GtkSwitch.
Update expected results to reflect that.

9 years agocss node tests: Update expected results
Matthias Clasen [Wed, 1 Jun 2016 17:11:27 +0000 (13:11 -0400)]
css node tests: Update expected results

We were not propagating direction changes in some places,
evidently. Now we do.

9 years agopopover menu: Improved labeled separators
Matthias Clasen [Wed, 1 Jun 2016 15:52:20 +0000 (11:52 -0400)]
popover menu: Improved labeled separators

Embed the label in the middle of the separators instead of
putting it above the separator.

https://bugzilla.gnome.org/show_bug.cgi?id=767108

9 years agoSeparators not correctly placed
Bastien Nocera [Wed, 1 Jun 2016 13:58:22 +0000 (15:58 +0200)]
Separators not correctly placed

What it should look like:
  Bold
----
/Size/
  x 0.5
  x 1.0

What it looks like:
  Bold
  /Size/
----
  x 0.5
  x 1.0

https://bugzilla.gnome.org/show_bug.cgi?id=767108

9 years agoscrolled window: Remove trackpoint heuristics
Matthias Clasen [Wed, 1 Jun 2016 11:01:37 +0000 (07:01 -0400)]
scrolled window: Remove trackpoint heuristics

This is now done in GDK, so we can just use the input type here.

https://bugzilla.gnome.org/show_bug.cgi?id=767100

9 years agox11: Mark trackpoints as GDK_SOURCE_TRACKPOINT
Matthias Clasen [Wed, 1 Jun 2016 10:58:43 +0000 (06:58 -0400)]
x11: Mark trackpoints as GDK_SOURCE_TRACKPOINT

This uses the same heuristics that are currently used in
GtkScrolledWindow.

https://bugzilla.gnome.org/show_bug.cgi?id=767100

9 years agogdk: Add GDK_SOURCE_TRACKPOINT
Matthias Clasen [Wed, 1 Jun 2016 10:57:46 +0000 (06:57 -0400)]
gdk: Add GDK_SOURCE_TRACKPOINT

Having this as an input source type will let us do the heuristics
in the GDK backends.

https://bugzilla.gnome.org/show_bug.cgi?id=767100

9 years agoAvoid a deprecation warning
Matthias Clasen [Wed, 1 Jun 2016 11:00:18 +0000 (07:00 -0400)]
Avoid a deprecation warning

9 years agoheaderbar: do not show buttons for modals/transients
Olivier Fourdan [Tue, 31 May 2016 13:25:52 +0000 (15:25 +0200)]
headerbar: do not show buttons for modals/transients

GtkHeadeBar checks the window type hint to determine if the regular
buttons such as menu, maximize or iconify should be visible in the
header bar.

However, an application may very well use a "normal" toplevel window and
set it transient and modal afterwards. In such a case, the iconify
button would remain visible, and the user can hide the window, but being
a modal, the parent window would remain insensitive.

Check for the window type, modality and transient relationship to decide
whether or not the regular toplevel buttons should be visible in the
header bar.

https://bugzilla.gnome.org/show_bug.cgi?id=767052

9 years agowayland: Better debug info for scroll axes
Matthias Clasen [Wed, 1 Jun 2016 02:05:58 +0000 (22:05 -0400)]
wayland: Better debug info for scroll axes

Print human readable names for axes and axis sources.

9 years agodocs: Add a release note about GtkSizeGroup::ignore-hidden
Matthias Clasen [Tue, 31 May 2016 20:33:18 +0000 (16:33 -0400)]
docs: Add a release note about GtkSizeGroup::ignore-hidden

9 years agoGtkShortcutsSection: avoid deprecation warnings
Matthias Clasen [Tue, 31 May 2016 20:32:20 +0000 (16:32 -0400)]
GtkShortcutsSection: avoid deprecation warnings

We could just as well remove these calls here, since they
have no effect.

9 years agoDocument GtkSizeGroup::ignore-hidden as broken
Matthias Clasen [Tue, 31 May 2016 20:19:52 +0000 (16:19 -0400)]
Document GtkSizeGroup::ignore-hidden as broken

...and deprecate it, recommending GtkStack as an alternative.

9 years agoAdwaita: ensure menuitem labels are not overridden
Lapo Calamandrei [Tue, 31 May 2016 18:58:35 +0000 (20:58 +0200)]
Adwaita: ensure menuitem labels are not overridden

see https://bugzilla.gnome.org/show_bug.cgi?id=767058

9 years agoentry: Fix undershoot position wrt entry icons
Timm Bäder [Sun, 29 May 2016 16:34:35 +0000 (18:34 +0200)]
entry: Fix undershoot position wrt entry icons

Draw them inside of the icons, which is where the text scrolls.

9 years agoREADME: Refer to release notes online
Matthias Clasen [Tue, 31 May 2016 00:24:13 +0000 (20:24 -0400)]
README: Refer to release notes online

We don't want to maintain this information in two places,
so just link to the online documentation here.

9 years agodocs: Fix a duplicate ID
Matthias Clasen [Tue, 31 May 2016 00:21:48 +0000 (20:21 -0400)]
docs: Fix a duplicate ID

This was causing navigation in the online docs to be confused.

9 years agoAdd a warning for a broken situation
Matthias Clasen [Mon, 30 May 2016 20:14:36 +0000 (16:14 -0400)]
Add a warning for a broken situation

When we emit ::draw, the widget should not have alloc_needed set
anymore. If this happens, it indicates a broken situation. Add a
warning to help tracking down why this might occur.

See https://bugzilla.gnome.org/show_bug.cgi?id=765410

9 years agogtk3-demo: Fix some css warnings
Matthias Clasen [Mon, 30 May 2016 20:07:52 +0000 (16:07 -0400)]
gtk3-demo: Fix some css warnings

Update the font: syntax to follow css.

9 years agobuild: add GtkStack accessible private header at the right place
Timm Bäder [Mon, 30 May 2016 18:40:43 +0000 (20:40 +0200)]
build: add GtkStack accessible private header at the right place

9 years agoUpdated Spanish translation
Daniel Mustieles [Mon, 30 May 2016 17:16:21 +0000 (19:16 +0200)]
Updated Spanish translation

9 years agorange: Properly indent closing brace
Timm Bäder [Sun, 22 May 2016 06:24:46 +0000 (08:24 +0200)]
range: Properly indent closing brace

Make sure it's obvious what if block it belongs to.

9 years agoAdd GtkStackAccessible
Timm Bäder [Sun, 29 May 2016 11:51:02 +0000 (13:51 +0200)]
Add GtkStackAccessible

Show only the currently visible child to a11y.

9 years agotests/scrolling-performance: Define MyTextView
Timm Bäder [Mon, 30 May 2016 06:59:46 +0000 (08:59 +0200)]
tests/scrolling-performance: Define MyTextView

The type is used in widget-factory.ui, so add a dummy definition here to
keep the test working.

9 years agoUpdated Occitan translation
Cédric Valmary [Mon, 30 May 2016 16:59:28 +0000 (16:59 +0000)]
Updated Occitan translation

9 years agoUpdated Occitan translation
Cédric Valmary [Mon, 30 May 2016 16:58:07 +0000 (16:58 +0000)]
Updated Occitan translation

9 years agoAdwaita: explicitelly set label caret-color to currentColor
Lapo Calamandrei [Mon, 30 May 2016 12:20:33 +0000 (14:20 +0200)]
Adwaita: explicitelly set label caret-color to currentColor

since it doesn't always inherit 'color' color as it should.

9 years agoAdwaita: make selection on infobars visible
Lapo Calamandrei [Mon, 30 May 2016 11:56:23 +0000 (13:56 +0200)]
Adwaita: make selection on infobars visible

see https://bugzilla.gnome.org/show_bug.cgi?id=745622

9 years agoUpdated Thai translation
Theppitak Karoonboonyanan [Mon, 30 May 2016 05:45:19 +0000 (12:45 +0700)]
Updated Thai translation

9 years agoFixes to Catalan translation
Jordi Mas [Sat, 28 May 2016 05:27:51 +0000 (07:27 +0200)]
Fixes to Catalan translation

9 years agoUpdate Catalan translation
Jordi Mas [Sat, 28 May 2016 05:21:39 +0000 (07:21 +0200)]
Update Catalan translation

9 years agoAdwaita: remove textview border
Lapo Calamandrei [Fri, 27 May 2016 09:34:47 +0000 (11:34 +0200)]
Adwaita: remove textview border

see https://bugzilla.gnome.org/show_bug.cgi?id=764203

9 years agoUpdated Thai translation
Theppitak Karoonboonyanan [Fri, 27 May 2016 08:49:58 +0000 (15:49 +0700)]
Updated Thai translation

9 years agox11: Replace RROutput with XID as used in GdkX11Monitor
Rico Tzschichholz [Fri, 27 May 2016 07:27:53 +0000 (09:27 +0200)]
x11: Replace RROutput with XID as used in GdkX11Monitor

This avoids an unconditional use of XRandr symbol.

9 years agoplacesview: Do not mark icon name as translatable
Thomas Lange [Wed, 25 May 2016 18:16:04 +0000 (20:16 +0200)]
placesview: Do not mark icon name as translatable

https://bugzilla.gnome.org/show_bug.cgi?id=766878

9 years ago3.21.2
Matthias Clasen [Thu, 26 May 2016 17:57:20 +0000 (13:57 -0400)]
3.21.2

9 years agoUpdates
Matthias Clasen [Thu, 26 May 2016 17:56:59 +0000 (13:56 -0400)]
Updates

9 years agoTeach gtk-builder-tool to leave GtkDialog::border-width alone
Matthias Clasen [Thu, 26 May 2016 17:21:50 +0000 (13:21 -0400)]
Teach gtk-builder-tool to leave GtkDialog::border-width alone

This is one of the properties that need to be explicitly set.

9 years agoUpdated Portuguese translation
Tiago Santos [Thu, 26 May 2016 13:44:51 +0000 (13:44 +0000)]
Updated Portuguese translation

9 years agoSilence a compiler warning
Emmanuele Bassi [Thu, 26 May 2016 11:45:51 +0000 (12:45 +0100)]
Silence a compiler warning

Initialize the `nearest` variable.

9 years agoGtkFileChooser: don't override already opened folder
Руслан Ижбулатов [Mon, 9 May 2016 12:48:07 +0000 (12:48 +0000)]
GtkFileChooser: don't override already opened folder

When filechooer is re-used (instead of being created and destroyed
every time it's needed), it might happen that the directory the
application wishes to initially show is the same directory that
was shown last time the filechooser was used. In that case, make sure
filechooser knows that it does not need to do its default "select $pwd
or $home" routine.

https://bugzilla.gnome.org/show_bug.cgi?id=766122

9 years agoMention CSS font property in the release notes
Matthias Clasen [Wed, 25 May 2016 19:56:04 +0000 (15:56 -0400)]
Mention CSS font property in the release notes

9 years agoUpdated German translation
Friedrich Herbst [Wed, 25 May 2016 08:36:09 +0000 (08:36 +0000)]
Updated German translation

9 years agoMove release notes to online docs
Matthias Clasen [Wed, 25 May 2016 04:55:11 +0000 (00:55 -0400)]
Move release notes to online docs

This will let us expand the information e.g. with code examples,
and can serve as starting material for a future 3->4 migration
guide.

9 years agoUpdate migration guide a bit
Matthias Clasen [Wed, 25 May 2016 00:55:16 +0000 (20:55 -0400)]
Update migration guide a bit

Resize grips are no more.

9 years agoFix a duplicate word in the docs
Matthias Clasen [Wed, 25 May 2016 00:51:55 +0000 (20:51 -0400)]
Fix a duplicate word in the docs

9 years agowindow: Unfreeze window on unmap
Benjamin Otte [Tue, 24 May 2016 23:16:52 +0000 (01:16 +0200)]
window: Unfreeze window on unmap

Make sure to keep parity with the number of times we froze the window
when we unmap it.
Otherwise it will permanently stay frozen after being remapped.

https://bugzilla.gnome.org/show_bug.cgi?id=766643
https://bugzilla.mozilla.org/show_bug.cgi?id=1225044

9 years agogtktextview: document how to get line space
Bastian Ilsø [Wed, 1 Apr 2015 20:46:46 +0000 (22:46 +0200)]
gtktextview: document how to get line space

adds a paragraph to gtk_text_view_get_pixels_below_lines(),
describing how it can be used together with
gtk_text_view_get_pixels_above_lines() to get the total
amount of line spacing between two paragraphs.

https://bugzilla.gnome.org/show_bug.cgi?id=747206

9 years agoAdd a deprecation note
Matthias Clasen [Tue, 24 May 2016 00:40:03 +0000 (20:40 -0400)]
Add a deprecation note

Mark GtkWidget:style property as deprecated in the docs.

9 years agoImprove CSS docs a bit
Matthias Clasen [Mon, 23 May 2016 23:25:41 +0000 (19:25 -0400)]
Improve CSS docs a bit

Among other things, explain the relationship of background-color
and background-image.

9 years agoTrivial typo fix
Matthias Clasen [Mon, 23 May 2016 23:24:07 +0000 (19:24 -0400)]
Trivial typo fix

9 years agoRemove an unused variable
Matthias Clasen [Mon, 23 May 2016 18:17:13 +0000 (14:17 -0400)]
Remove an unused variable

9 years agoinfobar: Update documentation
Matthias Clasen [Mon, 23 May 2016 18:14:32 +0000 (14:14 -0400)]
infobar: Update documentation

Remove explicit reference to color from the
gtk_info_bar_set_message_type() docs.

https://bugzilla.gnome.org/show_bug.cgi?id=759037

9 years agoUpdated Norwegian bokmål translation.
Kjartan Maraas [Mon, 23 May 2016 16:56:30 +0000 (18:56 +0200)]
Updated Norwegian bokmål translation.

9 years agogdk: Provide safe fallback for creating GL contexts
Emmanuele Bassi [Mon, 23 May 2016 07:34:39 +0000 (08:34 +0100)]
gdk: Provide safe fallback for creating GL contexts

If the backend does not override GdkWindowClass.create_gl_context()
then we should provide a fallback that gives an error, instead of
crashing.

https://bugzilla.gnome.org/show_bug.cgi?id=766782

9 years agogl: Add a realize() fallback
Emmanuele Bassi [Mon, 23 May 2016 07:31:47 +0000 (08:31 +0100)]
gl: Add a realize() fallback

Calling gdk_gl_context_realize() should always result in a valid result,
so we need to provide a default implementation, to avoid a call to a
NULL function pointer.

9 years agoUpdated Swedish translation
Anders Jonsson [Sat, 21 May 2016 21:39:34 +0000 (21:39 +0000)]
Updated Swedish translation

9 years agopopover: set priv->window before setting doing add_popover() on it
Carlos Garnacho [Sat, 21 May 2016 17:43:15 +0000 (19:43 +0200)]
popover: set priv->window before setting doing add_popover() on it

If the popover's relative-to widget is unparented/reparented, we end
up unparenting/reparenting the popover as well. In that case, at the
moment of reparenting, the widget might have been visible (and is
thus mapped again), but priv->window hasn't been set yet.

We must first set priv->window, and then call gtk_window_add_popover(),
that way gtk_popover_map() has its prerequisites straight.

https://bugzilla.gnome.org/show_bug.cgi?id=766323

9 years agoTypo
Khaled Hosny [Sat, 21 May 2016 13:54:19 +0000 (15:54 +0200)]
Typo

9 years agoUpdate Arabic translation
Khaled Hosny [Sat, 21 May 2016 05:40:09 +0000 (07:40 +0200)]
Update Arabic translation

9 years agostack: Only map children when necessary
Florian Müllner [Fri, 20 May 2016 22:07:10 +0000 (00:07 +0200)]
stack: Only map children when necessary

gtk_widget_set_parent() will map the widget if the parent is mapped
and the widget is both visible and child-visible. As we currently
only set the child visibility after adding the child, we immediately
map all children that are added to a mapped stack, even when they
are not actually shown. Avoid this by setting the child visibility
before adding the child, so widgets are only mapped when shown.

https://bugzilla.gnome.org/show_bug.cgi?id=766737

9 years agoAdwaita: add vertical margins to switches on a headerbar
Lapo Calamandrei [Fri, 20 May 2016 13:39:08 +0000 (15:39 +0200)]
Adwaita: add vertical margins to switches on a headerbar

See https://bugzilla.gnome.org/show_bug.cgi?id=766642

9 years agoAdwaita: shave 1px from the switch
Lapo Calamandrei [Fri, 20 May 2016 13:28:58 +0000 (15:28 +0200)]
Adwaita: shave 1px from the switch

make the switch height and width 1px smaller.

9 years agoImprove external drives detection
Ondrej Holy [Mon, 2 May 2016 10:55:56 +0000 (12:55 +0200)]
Improve external drives detection

Use g_drive_is_removable for external drives detection. Current heuristic
fails in some cases (e.g. when removable drive is attached before login),
see Bug 765457.

Bump GLib version accordingly.

https://bugzilla.gnome.org/show_bug.cgi?id=765924

9 years agogtktextview: fix < public > comment
Ignacio Casal Quinteiro [Fri, 20 May 2016 07:08:08 +0000 (09:08 +0200)]
gtktextview: fix < public > comment

This was causing problems with the gtk# scanner

9 years agotreeview: Fix a rubberbanding-related crash
Matthias Clasen [Thu, 19 May 2016 20:59:10 +0000 (16:59 -0400)]
treeview: Fix a rubberbanding-related crash

When starting a rubberband selection from an empty area, we could run
into crashes if the selection moves over the rows and then back out
to unpopulated area. Handle this case without crashing.

https://bugzilla.gnome.org/show_bug.cgi?id=766336

9 years agoscale css node test: Adapt to changes
Matthias Clasen [Thu, 19 May 2016 16:25:52 +0000 (12:25 -0400)]
scale css node test: Adapt to changes

The style classes are reflected in the output here.

9 years agocolor scale: Sync style classes with GtkScale
Matthias Clasen [Thu, 19 May 2016 15:05:28 +0000 (11:05 -0400)]
color scale: Sync style classes with GtkScale

We should use the same style classes here, to avoid theme
confusion.

9 years agocolor scale: Really sync style classes with GtkScale
Lapo Calamandrei [Thu, 19 May 2016 15:24:51 +0000 (17:24 +0200)]
color scale: Really sync style classes with GtkScale

sync the alpha scale styleclass too.

9 years agoAdwaita: fix scale theming
Lapo Calamandrei [Thu, 19 May 2016 15:05:46 +0000 (17:05 +0200)]
Adwaita: fix scale theming

rely on toplevel styleclass for scale with marks.

See https://bugzilla.gnome.org/show_bug.cgi?id=766440

9 years agogtkselectionprivate: minor style fix
Ignacio Casal Quinteiro [Thu, 19 May 2016 14:55:24 +0000 (16:55 +0200)]
gtkselectionprivate: minor style fix

This seems to make some issue with the gtk# scanner.

9 years agoscale: Use more succinct names for style classes
Matthias Clasen [Thu, 19 May 2016 13:44:25 +0000 (09:44 -0400)]
scale: Use more succinct names for style classes

Use .marks-before/after to indicate the presence of marks.
As Lapo points out, compatibility with the previous names
is not really that important, since everything else changed
around it.

https://bugzilla.gnome.org/show_bug.cgi?id=766440

9 years agoicon theme: Add a warning
Matthias Clasen [Thu, 19 May 2016 13:03:20 +0000 (09:03 -0400)]
icon theme: Add a warning

Warn about the situation when we've found a resource or file path,
but gdk-pixbuf fails to give us a pixbuf. This generally means that
either pixbuf loaders are not found or the shared-mime database
is missing.

9 years agowayland: Survive lack of settings
Matthias Clasen [Wed, 18 May 2016 17:08:44 +0000 (13:08 -0400)]
wayland: Survive lack of settings

This can be made to happen eg by setting XDG_DATA_DIRS and
XDG_DATA_HOME to /. Not a useful value, but not a good reason
to crash either.

9 years agowayland: Make gdk_wayland_window_get_wl_output() private
Olivier Fourdan [Thu, 19 May 2016 07:48:46 +0000 (09:48 +0200)]
wayland: Make gdk_wayland_window_get_wl_output() private

There is no need to make it a public API, move it to the private header
instead.

https://bugzilla.gnome.org/show_bug.cgi?id=766566

9 years agoUpdated Slovak translation
Dušan Kazik [Wed, 18 May 2016 18:48:18 +0000 (18:48 +0000)]
Updated Slovak translation

9 years agowayland: Add get_monitor_at_window to Wayland backend
Olivier Fourdan [Tue, 17 May 2016 13:04:23 +0000 (15:04 +0200)]
wayland: Add get_monitor_at_window to Wayland backend

Given that Wayland has no global coordinate, the only way for gdk to
retrieve the monitor a window last entered is to retrieve it from the
GdkWaylandWindow itself.

Implement the backend specific get_monitor_at_window() to return the
monitor that was last entered by the window.

https://bugzilla.gnome.org/show_bug.cgi?id=766566

9 years agowayland: Add API to retrieve the Wayland output
Olivier Fourdan [Tue, 17 May 2016 13:02:01 +0000 (15:02 +0200)]
wayland: Add API to retrieve the Wayland output

In Wayland, surfaces get an enter/leave notification each time they
enter or leave an output.

Add an API to GdkWaylandWindow to retrieve the output the window has
last entered.

https://bugzilla.gnome.org/show_bug.cgi?id=766566

9 years agodisplay: Add vfunc for get_monitor_at_window
Olivier Fourdan [Tue, 17 May 2016 11:09:23 +0000 (13:09 +0200)]
display: Add vfunc for get_monitor_at_window

Some backends (namely Wayland) do not support global coordinates so
using the window position to determine the monitor will always fail on
such backends.

In such cases, the backend itself might be better suited to identify
the monitor a given window resides on.

Add a vfunc get_monitor_at_window() to the display class so that we can
use the backend to retrieve the monitor, if the backend implements it.

https://bugzilla.gnome.org/show_bug.cgi?id=766566

9 years agoscale: Bring back marks-related style classes
Matthias Clasen [Wed, 18 May 2016 16:59:39 +0000 (12:59 -0400)]
scale: Bring back marks-related style classes

It turns out that it is too hard (and in some cases, impossible)
to get this information from node positioning, so bring back the
.scale-has-marks-above/below style classes on the main node.

This should allow us to fix the 'pointy sliders'.

https://bugzilla.gnome.org/show_bug.cgi?id=766440

9 years agoRevert "scrolledwindow: Better size requisition for GTK_SCROLL_NATURAL children"
Matthias Clasen [Wed, 18 May 2016 11:48:26 +0000 (07:48 -0400)]
Revert "scrolledwindow: Better size requisition for GTK_SCROLL_NATURAL children"

This reverts commit 096bea3f0ea8e80fe4c9a2a1a860f32c8a94cc33.

This was accidentally pushed.

9 years agox11/dnd: Ignore grab broken events from other devices than our DnD device.
Carlos Garnacho [Tue, 17 May 2016 17:27:00 +0000 (19:27 +0200)]
x11/dnd: Ignore grab broken events from other devices than our DnD device.

The GdkDragContext should only listen to GDK_GRAB_BROKEN events sent to
its own pointer device. It turns out that the passive key grabs mistake
GDK into sending a GdkEventGrabBroken on the master keyboard, which the
DnD machinery mistakes as a signal to cancel the operation.

https://bugzilla.gnome.org/show_bug.cgi?id=766442

9 years agowayland: Avoid spurious crossing events from master touch device
Carlos Garnacho [Thu, 12 May 2016 11:34:42 +0000 (13:34 +0200)]
wayland: Avoid spurious crossing events from master touch device

Only generate crossing events on wl_touch.down for the virtual master
device used for touch events, and only whenever this virtual device
actually moves across surfaces. This behavior resembles better what is
expected in X11, where the pointer is warped to the touch position
on XITouchBegin.

This avoids the double emission of leave events when the pointer
emulating touch is lifted, that crossing event will be instead
generated when/if the focus surface changes.

https://bugzilla.gnome.org/show_bug.cgi?id=766314

9 years agogdk/wayland: use the multi-thread safe wayland API
Matthew Waters [Fri, 18 Mar 2016 06:17:23 +0000 (17:17 +1100)]
gdk/wayland: use the multi-thread safe wayland API

This is required for proper integration with any other library/application that
may perform wayland API calls and poll() the wayland fd from multiple threads.
Using wl_display_dispatch{_queue}() is thread-safe if not mixed with custom
poll() usage, which GSource/GMainContext does.

Essentially, the problem is that multiple threads polling and reading
the same fd is extremely racy.  Use the wayland provided API for allowing
concurrent access to the wayland display fd.

See the wayland man pages for wl_display_prepare_read(),
wl_display_cancel_read() and wl_display_read_events() for more details.

https://bugzilla.gnome.org/show_bug.cgi?id=763852

9 years agoscrolledwindow: Better size requisition for GTK_SCROLL_NATURAL children
Debarshi Ray [Tue, 17 May 2016 14:28:20 +0000 (16:28 +0200)]
scrolledwindow: Better size requisition for GTK_SCROLL_NATURAL children

GtkScrolledWindow leans towards using the minimum size of its child
widget, unless the scrollbar policy is GTK_POLICY_NEVER. This is
probably fine for most GtkScrollable implementations out there.
Especially when using GTK_SCROLL_MINIMUM, which is the default for all
implementations inside gtk+.

However, this is not good for GTK_SCROLL_NATURAL children. eg.,
VteTerminal's minimum size is 1x1 and natural size is the number of
visible rows and columns requested by the user. We really want to use
the natural size unless the user has resized the window to change that.

https://bugzilla.gnome.org/show_bug.cgi?id=766569

9 years agoUpdate cursor docs
Matthias Clasen [Tue, 17 May 2016 18:16:39 +0000 (14:16 -0400)]
Update cursor docs

Include new images for context-menu and for no-drop.

9 years agogtk-demo: Update no-drop cursor image
Matthias Clasen [Tue, 17 May 2016 17:40:52 +0000 (13:40 -0400)]
gtk-demo: Update no-drop cursor image

Adwaita is using a different cursor for this now.

9 years agogtk3-demo: Add context-menu cursor
Matthias Clasen [Tue, 17 May 2016 17:39:18 +0000 (13:39 -0400)]
gtk3-demo: Add context-menu cursor

The Adwaita cursor theme covers this one now.